<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<title>Hello React!</title>
<!--react核心库-->
<script src="https://lf26-cdn-tos.bytecdntp.com/cdn/expire-1-M/react/18.2.0/umd/react.production.min.js" ></script>
<!--支持react操作dom-->
<script src="https://lf3-cdn-tos.bytecdntp.com/cdn/expire-1-M/react-dom/18.2.0/umd/react-dom.production.min.js"></script>
<!--引入babel,用于将jsx转化为js-->
<script src="https://lf9-cdn-tos.bytecdntp.com/cdn/expire-1-M/babel-standalone/6.26.0/babel.min.js" ></script>
</head>
<body>

<div id="test"></div>
<script type="text/babel"> /*这里一定要写babel*/
//1.创建函数式组件
//组件首字母必须大写
function Mycomponent(){
    console.log(this)//此处的this是undefined，是因为babel编译后开启严格模式
    //在严格模式下，this是不能指向window的当前窗口的
    return <h1>我是用函数定义的组件(适用于简单组件的定义)</h1>
    //函数必须有返回值
}
//2.渲染组件到页面
//jsx规定组件必须是一个闭合的标签
//render后面的函数必须要写组件标签
ReactDOM.render(<Mycomponent/>,document.getElementById('test'))
/*
实行ReactDOM.render(<Mycomponent/>,document.getElementById('test'))之后发生了什么
1.React解析组件标签，找到了MyComponent组件
2.发现组件是使用函数定义的，随后调用该组件，将返回的虚拟dom转换成真实DOM，随后呈现在页面中。
*/
</script>

</body>
</html>